]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
lookingGlass: Handle Esc in object inspector
authorFlorian Müllner <fmuellner@gnome.org>
Mon, 18 Apr 2022 15:23:45 +0000 (17:23 +0200)
committerMarge Bot <marge-bot@gnome.org>
Thu, 21 Apr 2022 08:21:45 +0000 (08:21 +0000)
Currently the main looking glass dialog handles Esc for both itself
and the object inspector. However as the latter now takes its own
Clutter.Grab, key events never reach the main dialog while the
inspector is open.

Fix this by handling the Esc key in the object inspector itself.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5356

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2271>

js/ui/lookingGlass.js

index 30d668f3c8efaaf9d7b1ffb7308e9794db59a567..1f10b5a8e4ad34c12710886ceee1add95500bd37 100644 (file)
@@ -486,6 +486,15 @@ class ObjInspector extends St.ScrollView {
         this._obj = null;
     }
 
+    vfunc_key_press_event(keyPressEvent) {
+        const symbol = keyPressEvent.keyval;
+        if (symbol === Clutter.KEY_Escape) {
+            this.close();
+            return Clutter.EVENT_STOP;
+        }
+        return super.vfunc_key_press_event(keyPressEvent);
+    }
+
     _onInsert() {
         let obj = this._obj;
         this.close();
@@ -1578,10 +1587,7 @@ class LookingGlass extends St.BoxLayout {
     vfunc_key_press_event(keyPressEvent) {
         let symbol = keyPressEvent.keyval;
         if (symbol == Clutter.KEY_Escape) {
-            if (this._objInspector.visible)
-                this._objInspector.close();
-            else
-                this.close();
+            this.close();
             return Clutter.EVENT_STOP;
         }
         // Ctrl+PgUp and Ctrl+PgDown switches tabs in the notebook view